package KK.Input.Keyboard
{
	import KK.System.IO.Keyboard;
	
	import flash.events.KeyboardEvent;
	
	import mx.core.Singleton;
	
	public class ToolShortcutKey extends Keyboard
	{
		static private var _instance:ToolShortcutKey;
		public function ToolShortcutKey(singleton:Singleton)
		{
			super();
			
			if(_instance){
				throw new Error("singleton class pless using Instance get Instance.");
			}
			_instance=this;
		}
		
		/**
		 * proxy keyboard event translate to KK 
		 * @param flashEvent
		 * 
		 */
		public static function HandlerKeyDown(flashEvent:KeyboardEvent):void{
			Instance.handlerKeyDown(flashEvent);
		}
		
		/**
		 * proxy keyboard Event translate to KK 
		 * @param flashEvent
		 * 
		 */
		public static function HandlerKeyUp(flashEvent:KeyboardEvent):void{
			Instance.handlerKeyUp(flashEvent);
		}
		
		
		static public function get Instance():ToolShortcutKey{
			if(!_instance){
				new ToolShortcutKey(new Singleton);
			}
			return _instance;
		}
	}
}


class Singleton{
	
}